/* 主题色：#3E6AB5 */
/* Success：#67C23A */
/* Warning：#E6A23C */
/* Danger：#F56C6C */
/* Info：#909399 */

body {
  width: 100%;
  background: #f7f8fa;
  font-size: 14px;
  color: #1b1f26;
  font-family: Microsoft YaHei, Source Han Sans CN Regular, Alibaba Sans;
}
[v-cloak] {
  display: none;
}

button,
input,
select,
textarea {
  font-family: Microsoft YaHei, Source Han Sans CN Regular, Alibaba Sans;
}

/* 内容布局 */
header {
  width: 100%;
}

.page-container {
  width: 1200px;
  margin: 0 auto;
  position: relative;
  padding-bottom: 50px;
}

.panel {
  width: 100%;
  background: #ffffff;
  padding: 20px;
  border-radius: 4px 4px 4px 4px;
  margin-top: 20px;
}

.title-line {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}
.panel-line {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.panel-line.flex-end {
  justify-content: flex-end;
}
.panel-line.flex-center {
  justify-content: center;
}
.panel-line.space-between {
  justify-content: space-between;
}

.ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.panel-title {
  font-size: 16px;
  line-height: 24px;
  font-weight: bold;
  color: #333333;
}
.text-tip {
  font-size: 12px;
  color: #999999;
}
.button-danger {
  color: #f56c6c;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

a {
  color: inherit;
}
a:hover {
  text-decoration: none;
}

.flex {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.flex.align-center {
  align-items: center;
}
.flex.justify-center {
  justify-content: center;
}
.flex.justify-between {
  justify-content: space-between;
}
.flex.justify-end {
  justify-content: flex-end;
}
.flex.align-end {
  align-items: flex-end;
}
.flex-wrap {
  flex-wrap: wrap;
}
.flex-1 {
  flex: 1;
}
.flex-2 {
  flex: 2;
}
.flex-3 {
  flex: 3;
}
